[INFO] cloning repository https://github.com/DanielSarmiento04/memo
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/DanielSarmiento04/memo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDanielSarmiento04%2Fmemo", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDanielSarmiento04%2Fmemo'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fc6921f36d844710f86351e7fcb5a5263c7a4d72
[INFO] fixing DanielSarmiento04/memo against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDanielSarmiento04%2Fmemo" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/DanielSarmiento04/memo
[INFO] finished tweaking git repo https://github.com/DanielSarmiento04/memo
[INFO] tweaked toml for git repo https://github.com/DanielSarmiento04/memo written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/DanielSarmiento04/memo on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/DanielSarmiento04/memo already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 28ab536d8a3fd5eddaae5d1ec16c1ebe0dd5c9fd8abc4e50c6a02a8df8d9b721
[INFO] running `Command { std: "docker" "start" "28ab536d8a3fd5eddaae5d1ec16c1ebe0dd5c9fd8abc4e50c6a02a8df8d9b721", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "28ab536d8a3fd5eddaae5d1ec16c1ebe0dd5c9fd8abc4e50c6a02a8df8d9b721" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "28ab536d8a3fd5eddaae5d1ec16c1ebe0dd5c9fd8abc4e50c6a02a8df8d9b721", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "28ab536d8a3fd5eddaae5d1ec16c1ebe0dd5c9fd8abc4e50c6a02a8df8d9b721" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating crates/kairos-rs/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-gateway/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-cli/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-client/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-ui/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]     Checking cfg-if v1.0.3
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling serde_core v1.0.226
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]     Checking slab v0.4.11
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]    Compiling serde v1.0.226
[INFO] [stderr]     Checking itoa v1.0.15
[INFO] [stderr]     Checking value-bag v1.11.1
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling find-msvc-tools v0.1.2
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]     Checking hashbrown v0.16.0
[INFO] [stderr]     Checking litemap v0.8.0
[INFO] [stderr]     Checking writeable v0.6.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]     Checking parking v2.2.1
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]     Checking http v1.3.1
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]     Checking regex-syntax v0.8.6
[INFO] [stderr]     Checking indexmap v2.11.4
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking alloc-no-stdlib v2.0.4
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]     Checking alloc-stdlib v0.2.2
[INFO] [stderr]     Checking adler2 v2.0.1
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking brotli-decompressor v5.0.0
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling time-core v0.1.6
[INFO] [stderr]     Checking socket2 v0.6.0
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking async-lock v3.4.1
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]     Checking flate2 v1.1.2
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]     Checking deranged v0.5.4
[INFO] [stderr]    Compiling cc v1.2.38
[INFO] [stderr]     Checking rustls-pki-types v1.12.0
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.103
[INFO] [stderr]     Checking local-waker v0.1.4
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking brotli v8.0.2
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking regex-automata v0.4.11
[INFO] [stderr]     Checking iana-time-zone v0.1.64
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]    Compiling pin-project-lite v0.2.16
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling rustls v0.23.32
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking actix-utils v3.0.1
[INFO] [stderr]     Checking bytestring v1.5.0
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]     Checking actix-service v2.0.3
[INFO] [stderr]     Checking time v0.3.44
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]    Compiling regex-lite v0.1.7
[INFO] [stderr]    Compiling portable-atomic v1.11.1
[INFO] [stderr]    Compiling unicase v2.8.1
[INFO] [stderr]     Checking async-task v4.7.1
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking local-channel v0.1.5
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking piper v0.2.4
[INFO] [stderr]     Checking anstyle v1.0.11
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]     Checking compression-core v0.4.29
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]     Checking language-tags v0.3.2
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]     Checking anstyle-query v1.1.4
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking anstream v0.6.20
[INFO] [stderr]     Checking regex v1.11.3
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]     Checking async-executor v1.13.3
[INFO] [stderr]     Checking webpki-roots v1.0.2
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking raw-cpuid v11.6.0
[INFO] [stderr]     Checking iri-string v0.7.8
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]     Checking futures-timer v3.0.3
[INFO] [stderr]     Checking event-listener v2.5.3
[INFO] [stderr]     Checking data-encoding v2.9.0
[INFO] [stderr]     Checking impl-more v0.1.9
[INFO] [stderr]     Checking async-channel v1.9.0
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking spinning_top v0.3.0
[INFO] [stderr]     Checking kv-log-macro v1.0.7
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking no-std-compat v0.4.1
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]     Checking nonzero_ext v0.3.0
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]     Checking env_filter v0.1.3
[INFO] [stderr]     Checking ordered-float v5.1.0
[INFO] [stderr]     Checking pem v3.0.5
[INFO] [stderr]     Checking as-any v0.3.2
[INFO] [stderr]     Checking jiff v0.2.15
[INFO] [stderr]    Compiling wasm-bindgen v0.2.103
[INFO] [stderr]     Checking glob v0.3.3
[INFO] [stderr]     Checking compression-codecs v0.4.30
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]     Checking quanta v0.12.6
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]    Compiling const_format_proc_macros v0.2.34
[INFO] [stderr]    Compiling proc-macro-utils v0.10.0
[INFO] [stderr]     Checking throw_error v0.3.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.103
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]    Compiling convert_case v0.8.0
[INFO] [stderr]    Compiling slotmap v1.0.7
[INFO] [stderr]     Checking async-global-executor v2.4.1
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]     Checking or_poisoned v0.1.0
[INFO] [stderr]     Checking eventsource-stream v0.2.3
[INFO] [stderr]     Checking async-std v1.13.2
[INFO] [stderr]    Compiling reactive_graph v0.2.8
[INFO] [stderr]    Compiling server_fn_macro v0.8.7
[INFO] [stderr]     Checking send_wrapper v0.6.0
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling camino v1.2.0
[INFO] [stderr]    Compiling const_format v0.2.34
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking guardian v1.3.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.103
[INFO] [stderr]     Checking rustc-hash v2.1.1
[INFO] [stderr]    Compiling xxhash-rust v0.8.15
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling manyhow-macros v0.11.4
[INFO] [stderr]    Compiling tachys v0.2.9
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking utf8-width v0.1.7
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]     Checking winnow v0.7.13
[INFO] [stderr]     Checking html-escape v0.2.13
[INFO] [stderr]    Compiling serde_derive v1.0.226
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking tokio v1.47.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking zerovec v0.11.4
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]     Checking simple_asn1 v0.6.3
[INFO] [stderr]    Compiling enum-as-inner v0.6.1
[INFO] [stderr]    Compiling lazy-regex-proc_macros v3.4.1
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking ref-cast v1.0.25
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.103
[INFO] [stderr]    Compiling derive-where v1.6.0
[INFO] [stderr]    Compiling syn_derive v0.2.0
[INFO] [stderr]    Compiling quote-use-macros v0.8.4
[INFO] [stderr]     Checking rustls-webpki v0.103.6
[INFO] [stderr]    Compiling reactive_stores_macro v0.2.6
[INFO] [stderr]     Checking toml_parser v1.0.4
[INFO] [stderr]    Compiling manyhow v0.11.4
[INFO] [stderr]    Compiling quote-use v0.8.4
[INFO] [stderr]     Checking lazy-regex v3.4.1
[INFO] [stderr]     Checking either_of v0.1.6
[INFO] [stderr]    Compiling server_fn v0.8.7
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking js-sys v0.3.80
[INFO] [stderr]     Checking serde_spanned v1.0.3
[INFO] [stderr]     Checking toml_datetime v0.7.3
[INFO] [stderr]     Checking erased v0.1.2
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]     Checking drain_filter_polyfill v0.1.3
[INFO] [stderr]     Checking next_tuple v0.1.0
[INFO] [stderr]     Checking const_str_slice_concat v0.1.0
[INFO] [stderr]     Checking yansi v1.0.1
[INFO] [stderr]    Compiling interpolator v0.5.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking linear-map v1.2.0
[INFO] [stderr]    Compiling collection_literals v1.0.2
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking convert_case v0.6.0
[INFO] [stderr]     Checking governor v0.6.3
[INFO] [stderr]     Checking tracing-futures v0.2.5
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling attribute-derive-macro v0.10.5
[INFO] [stderr]     Checking toml v0.9.8
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking tokio-util v0.7.16
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking actix-rt v2.11.0
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]    Compiling actix-router v0.5.3
[INFO] [stderr]     Checking actix-server v2.6.0
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking async-compression v0.4.31
[INFO] [stderr]     Checking schemars v1.2.1
[INFO] [stderr]     Checking uuid v1.18.1
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking actix-codec v0.5.2
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking jsonwebtoken v9.3.1
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking tower-http v0.6.6
[INFO] [stderr]     Checking hydration_context v0.3.0
[INFO] [stderr]     Checking oco_ref v0.2.1
[INFO] [stderr]    Compiling actix-web-codegen v4.3.0
[INFO] [stderr]     Checking serde_qs v0.15.0
[INFO] [stderr]    Compiling rstml v0.12.1
[INFO] [stderr]     Checking suppaftp v5.4.0
[INFO] [stderr]    Compiling server_fn_macro_default v0.8.5
[INFO] [stderr]    Compiling typed-builder-macro v0.21.2
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking tokio-test v0.4.4
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]    Compiling leptos_macro v0.8.9
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]     Checking const-str v0.6.4
[INFO] [stderr]    Compiling base16 v0.2.1
[INFO] [stderr]    Compiling wasm_split_macros v0.1.3
[INFO] [stderr]    Compiling leptos_hot_reload v0.8.5
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking config v0.15.18
[INFO] [stderr]    Compiling attribute-derive v0.10.5
[INFO] [stderr]     Checking codee v0.3.3
[INFO] [stderr]     Checking tungstenite v0.21.0
[INFO] [stderr]     Checking hickory-proto v0.24.4
[INFO] [stderr]    Compiling leptos v0.8.10
[INFO] [stderr]     Checking async-once-cell v0.5.4
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking tokio-rustls v0.26.3
[INFO] [stderr]     Checking wasm_split_helpers v0.1.2
[INFO] [stderr]    Compiling leptos_router v0.8.8
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.53
[INFO] [stderr]     Checking web-sys v0.3.80
[INFO] [stderr]     Checking any_spawner v0.3.0
[INFO] [stderr]     Checking typed-builder v0.21.2
[INFO] [stderr]     Checking leptos_config v0.8.7
[INFO] [stderr]     Checking tokio-tungstenite v0.21.0
[INFO] [stderr]    Compiling leptos_router_macro v0.8.5
[INFO] [stderr]     Checking unicode-width v0.2.1
[INFO] [stderr]     Checking gloo-timers v0.3.0
[INFO] [stderr]     Checking serde-wasm-bindgen v0.6.5
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking console v0.15.11
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking bytecount v0.6.9
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking clap_lex v0.7.5
[INFO] [stderr]     Checking papergrid v0.11.0
[INFO] [stderr]    Compiling clap_derive v4.5.47
[INFO] [stderr]     Checking shell-words v1.1.0
[INFO] [stderr]     Checking number_prefix v0.4.0
[INFO] [stderr]     Checking clap_builder v4.5.48
[INFO] [stderr]     Checking colored v2.2.0
[INFO] [stderr]     Checking dialoguer v0.11.0
[INFO] [stderr]     Checking indicatif v0.17.11
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]    Compiling tabled_derive v0.7.0
[INFO] [stderr]     Checking reactive_stores v0.2.5
[INFO] [stderr]     Checking clap v4.5.48
[INFO] [stderr]     Checking actix-http v3.11.1
[INFO] [stderr]     Checking hyper v1.7.0
[INFO] [stderr]     Checking tabled v0.15.0
[INFO] [stderr]     Checking hyper-util v0.1.17
[INFO] [stderr]     Checking actix-web v4.11.0
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking reqwest v0.12.23
[INFO] [stderr]     Checking rig-core v0.29.0
[INFO] [stderr]     Checking actix-ws v0.2.5
[INFO] [stderr]     Checking actix-governor v0.5.0
[INFO] [stderr]     Checking gloo-utils v0.2.0
[INFO] [stderr]     Checking wasm-streams v0.4.2
[INFO] [stderr]     Checking gloo-net v0.6.0
[INFO] [stderr]     Checking kairos-rs v0.3.2 (/opt/rustwide/workdir/crates/kairos-rs)
[INFO] [stderr]    Migrating crates/kairos-rs/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking leptos_server v0.8.5
[INFO] [stderr]     Checking leptos_dom v0.8.7
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/config/hot_reload.rs:230:60
[INFO] [stdout]     |
[INFO] [stdout] 228 |                 interval.tick().await;
[INFO] [stdout]     |                 ---------------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |                 match get_file_modified_time(&config_path).await {
[INFO] [stdout]     |                       -------------------------------------^^^^^
[INFO] [stdout]     |                       |                                    |
[INFO] [stdout]     |                       |                                    this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                       |                                    up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 235 |                             match Self::reload_config(&config_path).await {
[INFO] [stdout]     |                                   ---------------------------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 246 |                                     *current_config.write().await = update.clone();
[INFO] [stdout]     |                                      ----------------------------
[INFO] [stdout]     |                                      |                      |
[INFO] [stdout]     |                                      |                      this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                      |                      `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                      `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                      `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 273 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/routes/management.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     let settings = manager.settings.read().await;
[INFO] [stdout]     |         --------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `settings` calls a custom destructor
[INFO] [stdout]     |         `settings` will be dropped later as of Edition 2024
[INFO] [stdout] 149 |
[INFO] [stdout] 150 |     HttpResponse::Ok().json(RouteResponse {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.11.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `settings` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/routes/management.rs:498:5
[INFO] [stdout]     |
[INFO] [stdout] 497 |     let settings = manager.settings.read().await;
[INFO] [stdout]     |         --------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `settings` calls a custom destructor
[INFO] [stdout]     |         `settings` will be dropped later as of Edition 2024
[INFO] [stdout] 498 |     HttpResponse::Ok().json(&*settings)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 499 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.11.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `settings` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed crates/kairos-rs/src/services/circuit_breaker.rs (1 fix)
[INFO] [stderr]        Fixed crates/kairos-rs/src/services/ai.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/routes/websocket.rs:161:57
[INFO] [stdout]      |
[INFO] [stdout]  135 |               let mut update_interval = interval(Duration::from_secs(subscription.interval_seconds));
[INFO] [stdout]      |                   -------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   `update_interval` calls a custom destructor
[INFO] [stdout]      |                   `update_interval` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  144 | /                 tokio::select! {
[INFO] [stdout]  145 | |                     // Handle incoming messages from client
[INFO] [stdout]  146 | |                     Some(msg) = msg_stream.recv() => {
[INFO] [stdout]      | |                          ---
[INFO] [stdout]      | |                          |
[INFO] [stdout]      | |                          `msg` calls a custom destructor
[INFO] [stdout]      | |                          `msg` will be dropped later as of Edition 2024
[INFO] [stdout]  147 | |                         match msg {
[INFO] [stdout]  148 | |                             Ok(Message::Text(text)) => {
[INFO] [stdout]      | |                                              ----
[INFO] [stdout]      | |                                              |
[INFO] [stdout]      | |                                              `text` calls a custom destructor
[INFO] [stdout]      | |                                              `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  161 | |                                             if let Err(e) = send_historical_metrics(
[INFO] [stdout]      | |    ____________________________________________________-____^
[INFO] [stdout]      | |   |                                                    |
[INFO] [stdout]      | |   |                                                    `e` calls a custom destructor
[INFO] [stdout]      | |   |                                                    `e` will be dropped later as of Edition 2024
[INFO] [stdout]  162 | |   |                                             &mut session,
[INFO] [stdout]  163 | |   |                                             &metrics_store,
[INFO] [stdout]  164 | |   |                                             &subscription.metrics
[INFO] [stdout]  165 | |   |                                         ).await {
[INFO] [stdout]      | |   |                                           ----^
[INFO] [stdout]      | |   |                                           |   |
[INFO] [stdout]      | |   |                                           |   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |   |                                           |   up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |   |___________________________________________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      | |                                               |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                               this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      | |                                               up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                                               `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  168 | |                                         }
[INFO] [stdout]      | |                                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...    |
[INFO] [stdout]  172 | |                                         let _ = send_error(&mut session, &format!("Invalid subscription: {}", e)).await;
[INFO] [stdout]      | |                                                 -----------------------------------------------------------------------
[INFO] [stdout]      | |                                                 |                                                                 |
[INFO] [stdout]      | |                                                 |                                                                 this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                                                 |                                                                 `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  176 | |                             Ok(Message::Ping(bytes)) => {
[INFO] [stdout]      | |                                              -----
[INFO] [stdout]      | |                                              |
[INFO] [stdout]      | |                                              `bytes` calls a custom destructor
[INFO] [stdout]      | |                                              `bytes` will be dropped later as of Edition 2024
[INFO] [stdout]  177 | |                                 debug!("Received ping, sending pong");
[INFO] [stdout]  178 | |                                 if session.pong(&bytes).await.is_err() {
[INFO] [stdout]      | |                                    --------------------------
[INFO] [stdout]      | |                                    |
[INFO] [stdout]      | |                                    this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  197 | |                         if let Err(e) = send_metrics_snapshot(&mut session, &metrics).await {
[INFO] [stdout]      | |                                         ---------------------------------------------------
[INFO] [stdout]      | |                                         |                                             |
[INFO] [stdout]      | |                                         |                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                                         |                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                         this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                                         `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  202 | |                 }
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `output` calls a custom destructor
[INFO] [stdout]      | |                 `output` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                 `futures_init` calls a custom destructor
[INFO] [stdout]      | |                 `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                 `futures` calls a custom destructor
[INFO] [stdout]      | |                 `futures` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `update_interval` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/routes/websocket.rs:197:37
[INFO] [stdout]      |
[INFO] [stdout]  135 |             let mut update_interval = interval(Duration::from_secs(subscription.interval_seconds));
[INFO] [stdout]      |                 -------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `update_interval` calls a custom destructor
[INFO] [stdout]      |                 `update_interval` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  144 | /               tokio::select! {
[INFO] [stdout]  145 | |                   // Handle incoming messages from client
[INFO] [stdout]  146 | |                   Some(msg) = msg_stream.recv() => {
[INFO] [stdout]      | |                        ---
[INFO] [stdout]      | |                        |
[INFO] [stdout]      | |                        `msg` calls a custom destructor
[INFO] [stdout]      | |                        `msg` will be dropped later as of Edition 2024
[INFO] [stdout]  147 | |                       match msg {
[INFO] [stdout]  148 | |                           Ok(Message::Text(text)) => {
[INFO] [stdout]      | |                                            ----
[INFO] [stdout]      | |                                            |
[INFO] [stdout]      | |                                            `text` calls a custom destructor
[INFO] [stdout]      | |                                            `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  161 | |                                           if let Err(e) = send_historical_metrics(
[INFO] [stdout]      | |  ____________________________________________________-____-
[INFO] [stdout]      | | |                                                    |
[INFO] [stdout]      | | |                                                    `e` calls a custom destructor
[INFO] [stdout]      | | |                                                    `e` will be dropped later as of Edition 2024
[INFO] [stdout]  162 | | |                                             &mut session,
[INFO] [stdout]  163 | | |                                             &metrics_store,
[INFO] [stdout]  164 | | |                                             &subscription.metrics
[INFO] [stdout]  165 | | |                                         ).await {
[INFO] [stdout]      | | |                                           -----
[INFO] [stdout]      | | |                                           |   |
[INFO] [stdout]      | | |___________________________________________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      | |                                             |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  172 | |                                       let _ = send_error(&mut session, &format!("Invalid subscription: {}", e)).await;
[INFO] [stdout]      | |                                               -----------------------------------------------------------------------
[INFO] [stdout]      | |                                               |                                                                 |
[INFO] [stdout]      | |                                               |                                                                 this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                                               |                                                                 `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |                                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  176 | |                           Ok(Message::Ping(bytes)) => {
[INFO] [stdout]      | |                                            -----
[INFO] [stdout]      | |                                            |
[INFO] [stdout]      | |                                            `bytes` calls a custom destructor
[INFO] [stdout]      | |                                            `bytes` will be dropped later as of Edition 2024
[INFO] [stdout]  177 | |                               debug!("Received ping, sending pong");
[INFO] [stdout]  178 | |                               if session.pong(&bytes).await.is_err() {
[INFO] [stdout]      | |                                  --------------------------
[INFO] [stdout]      | |                                  |
[INFO] [stdout]      | |                                  this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                                  `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  197 | |                       if let Err(e) = send_metrics_snapshot(&mut session, &metrics).await {
[INFO] [stdout]      | |                                  -    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                                  |    |                                             |
[INFO] [stdout]      | |                                  |    |                                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      | |                                  |    |                                             up until Edition 2021 `#11` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                  |    |                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                                  |    |                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                  |    this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      | |                                  |    up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                  |    this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                                  |    `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                  this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                                  `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  202 | |               }
[INFO] [stdout]      | |               -
[INFO] [stdout]      | |               |
[INFO] [stdout]      | |               `output` calls a custom destructor
[INFO] [stdout]      | |               `output` will be dropped later as of Edition 2024
[INFO] [stdout]      | |               `futures_init` calls a custom destructor
[INFO] [stdout]      | |               `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |               `futures` calls a custom destructor
[INFO] [stdout]      | |               `futures` will be dropped later as of Edition 2024
[INFO] [stdout]      | |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |_______________`#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `update_interval` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  105 |                 "xai" => delegate_prompt!(xai::Client<HttpClient>, "XAI_API_KEY", "xAI"),
[INFO] [stdout]      |                          ---------------------------------------------------------------
[INFO] [stdout]      |                          |                                                             |
[INFO] [stdout]      |                          |                                                             now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                          in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  104 |                 "groq" => delegate_prompt!(groq::Client<HttpClient>, "GROQ_API_KEY", "Groq"),
[INFO] [stdout]      |                           ------------------------------------------------------------------
[INFO] [stdout]      |                           |                                                                |
[INFO] [stdout]      |                           |                                                                now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                           in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  102 |                     delegate_prompt!(mistral::Client<HttpClient>, "MISTRAL_API_KEY", "Mistral")
[INFO] [stdout]      |                     --------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]  103 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                       let client = <$client>::new(&key)
[INFO] [stdout]      |                           ------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `client` calls a custom destructor
[INFO] [stdout]      |                           `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                           .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                       let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                           -----
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `agent` calls a custom destructor
[INFO] [stdout]      |                           `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                           .await
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   95 | /                     delegate_prompt!(
[INFO] [stdout]   96 | |                         perplexity::Client<HttpClient>,
[INFO] [stdout]   97 | |                         "PERPLEXITY_API_KEY",
[INFO] [stdout]   98 | |                         "Perplexity"
[INFO] [stdout]   99 | |                     )
[INFO] [stdout]      | |_____________________- in this macro invocation
[INFO] [stdout]  100 |                   }
[INFO] [stdout]      |                   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   92 |                     delegate_prompt!(cohere::Client<HttpClient>, "COHERE_API_KEY", "Cohere")
[INFO] [stdout]      |                     ------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]   93 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                       let client = <$client>::new(&key)
[INFO] [stdout]      |                           ------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `client` calls a custom destructor
[INFO] [stdout]      |                           `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                           .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                       let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                           -----
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `agent` calls a custom destructor
[INFO] [stdout]      |                           `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                           .await
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   85 | /                     delegate_prompt!(
[INFO] [stdout]   86 | |                         anthropic::Client<HttpClient>,
[INFO] [stdout]   87 | |                         "ANTHROPIC_API_KEY",
[INFO] [stdout]   88 | |                         "Anthropic"
[INFO] [stdout]   89 | |                     )
[INFO] [stdout]      | |_____________________- in this macro invocation
[INFO] [stdout]   90 |                   }
[INFO] [stdout]      |                   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   82 |                     delegate_prompt!(openai::Client<HttpClient>, "OPENAI_API_KEY", "OpenAI")
[INFO] [stdout]      |                     ------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]   83 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                 let client = <$client>::new(&key)
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `client` calls a custom destructor
[INFO] [stdout]      |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                     .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                 let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `agent` calls a custom destructor
[INFO] [stdout]      |                     `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                     .await
[INFO] [stdout]      |                      ^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  195 |             "xai" => delegate_prompt!(xai::Client<HttpClient>, "XAI_API_KEY", "xAI", preamble),
[INFO] [stdout]      |                      -------------------------------------------------------------------------
[INFO] [stdout]      |                      |                                                                       |
[INFO] [stdout]      |                      |                                                                       now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                      in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                 let client = <$client>::new(&key)
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `client` calls a custom destructor
[INFO] [stdout]      |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                     .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                 let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `agent` calls a custom destructor
[INFO] [stdout]      |                     `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                     .await
[INFO] [stdout]      |                      ^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  194 |             "groq" => delegate_prompt!(groq::Client<HttpClient>, "GROQ_API_KEY", "Groq", preamble),
[INFO] [stdout]      |                       ----------------------------------------------------------------------------
[INFO] [stdout]      |                       |                                                                          |
[INFO] [stdout]      |                       |                                                                          now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                       in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  187 | /                 delegate_prompt!(
[INFO] [stdout]  188 | |                     mistral::Client<HttpClient>,
[INFO] [stdout]  189 | |                     "MISTRAL_API_KEY",
[INFO] [stdout]  190 | |                     "Mistral",
[INFO] [stdout]  191 | |                     preamble
[INFO] [stdout]  192 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  193 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  179 | /                 delegate_prompt!(
[INFO] [stdout]  180 | |                     perplexity::Client<HttpClient>,
[INFO] [stdout]  181 | |                     "PERPLEXITY_API_KEY",
[INFO] [stdout]  182 | |                     "Perplexity",
[INFO] [stdout]  183 | |                     preamble
[INFO] [stdout]  184 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  185 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  171 | /                 delegate_prompt!(
[INFO] [stdout]  172 | |                     cohere::Client<HttpClient>,
[INFO] [stdout]  173 | |                     "COHERE_API_KEY",
[INFO] [stdout]  174 | |                     "Cohere",
[INFO] [stdout]  175 | |                     preamble
[INFO] [stdout]  176 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  177 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  163 | /                 delegate_prompt!(
[INFO] [stdout]  164 | |                     anthropic::Client<HttpClient>,
[INFO] [stdout]  165 | |                     "ANTHROPIC_API_KEY",
[INFO] [stdout]  166 | |                     "Anthropic",
[INFO] [stdout]  167 | |                     preamble
[INFO] [stdout]  168 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  169 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  155 | /                 delegate_prompt!(
[INFO] [stdout]  156 | |                     openai::Client<HttpClient>,
[INFO] [stdout]  157 | |                     "OPENAI_API_KEY",
[INFO] [stdout]  158 | |                     "OpenAI",
[INFO] [stdout]  159 | |                     preamble
[INFO] [stdout]  160 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  161 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/http.rs:667:27
[INFO] [stdout]     |
[INFO] [stdout] 652 |                     let mut builder =
[INFO] [stdout]     |                         -----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `builder` calls a custom destructor
[INFO] [stdout]     |                         `builder` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 667 |                     match response.bytes().await {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                           |                |
[INFO] [stdout]     |                           |                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                           |                up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 678 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `builder` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `builder` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `builder` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.11.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/http.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 652 |                     let mut builder =
[INFO] [stdout]     |                         -----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `builder` calls a custom destructor
[INFO] [stdout]     |                         `builder` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 667 |                     match response.bytes().await {
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 678 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `builder` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `builder` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `builder` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.11.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:104:39
[INFO] [stdout]     |
[INFO] [stdout] 104 |             while let Some(Ok(msg)) = client_msg_stream.next().await {
[INFO] [stdout]     |                               ---     ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                               |       |                        |
[INFO] [stdout]     |                               |       |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               |       |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                               |       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                               |       up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               `msg` calls a custom destructor
[INFO] [stdout]     |                               `msg` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 130 |                         let _ = backend_write.close().await;
[INFO] [stdout]     |                                 ---------------------------
[INFO] [stdout]     |                                 |                     |
[INFO] [stdout]     |                                 |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                 |                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 136 |                 if let Err(e) = backend_write.send(backend_msg).await {
[INFO] [stdout]     |                            -                                    -----
[INFO] [stdout]     |                            |                                    |
[INFO] [stdout]     |                            |                                    this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            |                                    `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `e` calls a custom destructor
[INFO] [stdout]     |                            `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 140 |                     let _ = client_session_clone.close(None).await;
[INFO] [stdout]     |                             --------------------------------------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `__awaitee` calls a custom destructor
[INFO] [stdout]     |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 143 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:156:75
[INFO] [stdout]     |
[INFO] [stdout] 149 |             while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                            ----------                        -----
[INFO] [stdout]     |                            |                                 |
[INFO] [stdout]     |                            |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `msg_result` calls a custom destructor
[INFO] [stdout]     |                            `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                 if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                 --------------------------^^^^^
[INFO] [stdout]     |                                                 |                         |
[INFO] [stdout]     |                                                 |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                                 |                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 162 |                             }
[INFO] [stdout]     |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                 if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                 --------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                 if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                 if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:166:76
[INFO] [stdout]     |
[INFO] [stdout] 149 |             while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                            ----------                        -----
[INFO] [stdout]     |                            |                                 |
[INFO] [stdout]     |                            |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `msg_result` calls a custom destructor
[INFO] [stdout]     |                            `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                 if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                 -------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                 if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                 ---------------------------^^^^^
[INFO] [stdout]     |                                                 |                          |
[INFO] [stdout]     |                                                 |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                                 |                          up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 172 |                             }
[INFO] [stdout]     |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                 if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                 if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:176:77
[INFO] [stdout]     |
[INFO] [stdout] 149 |             while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                            ----------                        -----
[INFO] [stdout]     |                            |                                 |
[INFO] [stdout]     |                            |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `msg_result` calls a custom destructor
[INFO] [stdout]     |                            `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                 if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                 -------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                 if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                 --------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                 if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                 ----------------------------^^^^^
[INFO] [stdout]     |                                                 |                           |
[INFO] [stdout]     |                                                 |                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                                 |                           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 182 |                             }
[INFO] [stdout]     |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                 if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:186:77
[INFO] [stdout]     |
[INFO] [stdout] 149 |             while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                            ----------                        -----
[INFO] [stdout]     |                            |                                 |
[INFO] [stdout]     |                            |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `msg_result` calls a custom destructor
[INFO] [stdout]     |                            `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                 if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                 -------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                 if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                 --------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                 if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                 if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                 ----------------------------^^^^^
[INFO] [stdout]     |                                                 |                           |
[INFO] [stdout]     |                                                 |                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                                 |                           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 192 |                             }
[INFO] [stdout]     |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:149:42
[INFO] [stdout]     |
[INFO] [stdout] 149 |               while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                              ----------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                              |             |                   |
[INFO] [stdout]     |                              |             |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              |             |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                              |             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                              |             up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                              `msg_result` calls a custom destructor
[INFO] [stdout]     |                              `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                   if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                   -------------------------------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                   if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                   --------------------------------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                   if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                   ---------------------------------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                   `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                   if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                   ---------------------------------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 220 |                                   let _ = client_session.close(close_reason).await;
[INFO] [stdout]     |                                           ----------------------------------------
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                           `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 226 |                       Err(e) => {
[INFO] [stdout]     |                           -
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           `e` calls a custom destructor
[INFO] [stdout]     |                           `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 230 |                           let _ = client_session.close(Some(actix_ws::CloseReason {
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 231 | |                             code: actix_ws::CloseCode::Error,
[INFO] [stdout] 232 | |                             description: Some(format!("Backend error: {}", e)),
[INFO] [stdout] 233 | |                         })).await;
[INFO] [stdout]     | |                                 -
[INFO] [stdout]     | |                                 |
[INFO] [stdout]     | |_________________________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 237 |               }
[INFO] [stdout]     |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:352:54
[INFO] [stdout]      |
[INFO] [stdout]  352 |                           if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |  ____________________________________----______---_____^
[INFO] [stdout]      | |                                    |         |
[INFO] [stdout]      | |                                    |         `val` calls a custom destructor
[INFO] [stdout]      | |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    `name` calls a custom destructor
[INFO] [stdout]      | |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout]  353 | |                             HeaderName::from_str(&transform.name),
[INFO] [stdout]  354 | |                             HeaderValue::from_str(value),
[INFO] [stdout]  355 | |                         ) {
[INFO] [stdout]      | |                         ^
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |_________________________this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                           up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  358 |                                       headers.insert(name, val);
[INFO] [stdout]      |                                       -------------------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  361 |                                   headers.insert(name, val);
[INFO] [stdout]      |                                   -------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  364 |                       }
[INFO] [stdout]      |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  367 |                       if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                 ----
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                           headers.remove(&name);
[INFO] [stdout]      |                           ---------------------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  375 |                           if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                     -----
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `regex` calls a custom destructor
[INFO] [stdout]      |                                     `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  376 |                               if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                         ----
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  381 |                                               headers.insert(name, new_val);
[INFO] [stdout]      |                                               -----------------------------
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                               `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:367:39
[INFO] [stdout]      |
[INFO] [stdout]  352 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  358 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  361 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  367 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |       |
[INFO] [stdout]      |                               |       this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                               |       up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  369 |                     }
[INFO] [stdout]  370 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  375 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  376 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  381 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:376:47
[INFO] [stdout]      |
[INFO] [stdout]  352 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  358 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  361 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  367 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  375 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  376 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |       |
[INFO] [stdout]      |                                       |       this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                       |       up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  381 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  386 |                         }
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:375:44
[INFO] [stdout]      |
[INFO] [stdout]  352 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  358 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  361 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  367 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  375 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |        |
[INFO] [stdout]      |                                   |        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |        up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  376 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  381 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  387 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:475:54
[INFO] [stdout]      |
[INFO] [stdout]  475 |                           if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |  ____________________________________----______---_____^
[INFO] [stdout]      | |                                    |         |
[INFO] [stdout]      | |                                    |         `val` calls a custom destructor
[INFO] [stdout]      | |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    `name` calls a custom destructor
[INFO] [stdout]      | |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout]  476 | |                             HeaderName::from_str(&transform.name),
[INFO] [stdout]  477 | |                             HeaderValue::from_str(value),
[INFO] [stdout]  478 | |                         ) {
[INFO] [stdout]      | |                         ^
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |_________________________this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                           up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                                       headers.insert(name, val);
[INFO] [stdout]      |                                       -------------------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  484 |                                   headers.insert(name, val);
[INFO] [stdout]      |                                   -------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  487 |                       }
[INFO] [stdout]      |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  490 |                       if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                 ----
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  491 |                           headers.remove(&name);
[INFO] [stdout]      |                           ---------------------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  498 |                           if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                     -----
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `regex` calls a custom destructor
[INFO] [stdout]      |                                     `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  499 |                               if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                         ----
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  504 |                                               headers.insert(name, new_val);
[INFO] [stdout]      |                                               -----------------------------
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                               `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:490:39
[INFO] [stdout]      |
[INFO] [stdout]  475 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  484 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  490 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |       |
[INFO] [stdout]      |                               |       this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                               |       up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  491 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  492 |                     }
[INFO] [stdout]  493 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  498 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  499 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  504 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:499:47
[INFO] [stdout]      |
[INFO] [stdout]  475 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  484 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  490 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  491 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  498 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  499 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |       |
[INFO] [stdout]      |                                       |       this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                       |       up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  504 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  509 |                         }
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:498:44
[INFO] [stdout]      |
[INFO] [stdout]  475 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  484 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  490 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  491 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  498 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |        |
[INFO] [stdout]      |                                   |        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |        up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  499 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  504 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  510 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking leptos_meta v0.8.5
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/config/hot_reload.rs:230:60
[INFO] [stdout]     |
[INFO] [stdout] 228 |                 interval.tick().await;
[INFO] [stdout]     |                 ---------------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 229 |
[INFO] [stdout] 230 |                 match get_file_modified_time(&config_path).await {
[INFO] [stdout]     |                       -------------------------------------^^^^^
[INFO] [stdout]     |                       |                                    |
[INFO] [stdout]     |                       |                                    this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                       |                                    up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 235 |                             match Self::reload_config(&config_path).await {
[INFO] [stdout]     |                                   ---------------------------------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 246 |                                     *current_config.write().await = update.clone();
[INFO] [stdout]     |                                      ----------------------------
[INFO] [stdout]     |                                      |                      |
[INFO] [stdout]     |                                      |                      this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                      |                      `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                      `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                      `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 273 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]     |
[INFO] [stdout] 444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/routes/management.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     let settings = manager.settings.read().await;
[INFO] [stdout]     |         --------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `settings` calls a custom destructor
[INFO] [stdout]     |         `settings` will be dropped later as of Edition 2024
[INFO] [stdout] 149 |
[INFO] [stdout] 150 |     HttpResponse::Ok().json(RouteResponse {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.11.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `settings` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/routes/management.rs:498:5
[INFO] [stdout]     |
[INFO] [stdout] 497 |     let settings = manager.settings.read().await;
[INFO] [stdout]     |         --------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `settings` calls a custom destructor
[INFO] [stdout]     |         `settings` will be dropped later as of Edition 2024
[INFO] [stdout] 498 |     HttpResponse::Ok().json(&*settings)
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 499 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.11.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `settings` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/routes/websocket.rs:161:57
[INFO] [stdout]      |
[INFO] [stdout]  135 |               let mut update_interval = interval(Duration::from_secs(subscription.interval_seconds));
[INFO] [stdout]      |                   -------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   `update_interval` calls a custom destructor
[INFO] [stdout]      |                   `update_interval` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  144 | /                 tokio::select! {
[INFO] [stdout]  145 | |                     // Handle incoming messages from client
[INFO] [stdout]  146 | |                     Some(msg) = msg_stream.recv() => {
[INFO] [stdout]      | |                          ---
[INFO] [stdout]      | |                          |
[INFO] [stdout]      | |                          `msg` calls a custom destructor
[INFO] [stdout]      | |                          `msg` will be dropped later as of Edition 2024
[INFO] [stdout]  147 | |                         match msg {
[INFO] [stdout]  148 | |                             Ok(Message::Text(text)) => {
[INFO] [stdout]      | |                                              ----
[INFO] [stdout]      | |                                              |
[INFO] [stdout]      | |                                              `text` calls a custom destructor
[INFO] [stdout]      | |                                              `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  161 | |                                             if let Err(e) = send_historical_metrics(
[INFO] [stdout]      | |    ____________________________________________________-____^
[INFO] [stdout]      | |   |                                                    |
[INFO] [stdout]      | |   |                                                    `e` calls a custom destructor
[INFO] [stdout]      | |   |                                                    `e` will be dropped later as of Edition 2024
[INFO] [stdout]  162 | |   |                                             &mut session,
[INFO] [stdout]  163 | |   |                                             &metrics_store,
[INFO] [stdout]  164 | |   |                                             &subscription.metrics
[INFO] [stdout]  165 | |   |                                         ).await {
[INFO] [stdout]      | |   |                                           ----^
[INFO] [stdout]      | |   |                                           |   |
[INFO] [stdout]      | |   |                                           |   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |   |                                           |   up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |   |___________________________________________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      | |                                               |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                               this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      | |                                               up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                                               `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  168 | |                                         }
[INFO] [stdout]      | |                                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...    |
[INFO] [stdout]  172 | |                                         let _ = send_error(&mut session, &format!("Invalid subscription: {}", e)).await;
[INFO] [stdout]      | |                                                 -----------------------------------------------------------------------
[INFO] [stdout]      | |                                                 |                                                                 |
[INFO] [stdout]      | |                                                 |                                                                 this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                                                 |                                                                 `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  176 | |                             Ok(Message::Ping(bytes)) => {
[INFO] [stdout]      | |                                              -----
[INFO] [stdout]      | |                                              |
[INFO] [stdout]      | |                                              `bytes` calls a custom destructor
[INFO] [stdout]      | |                                              `bytes` will be dropped later as of Edition 2024
[INFO] [stdout]  177 | |                                 debug!("Received ping, sending pong");
[INFO] [stdout]  178 | |                                 if session.pong(&bytes).await.is_err() {
[INFO] [stdout]      | |                                    --------------------------
[INFO] [stdout]      | |                                    |
[INFO] [stdout]      | |                                    this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  197 | |                         if let Err(e) = send_metrics_snapshot(&mut session, &metrics).await {
[INFO] [stdout]      | |                                         ---------------------------------------------------
[INFO] [stdout]      | |                                         |                                             |
[INFO] [stdout]      | |                                         |                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                                         |                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                         this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                                         `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  202 | |                 }
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `output` calls a custom destructor
[INFO] [stdout]      | |                 `output` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                 `futures_init` calls a custom destructor
[INFO] [stdout]      | |                 `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                 `futures` calls a custom destructor
[INFO] [stdout]      | |                 `futures` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `update_interval` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/routes/websocket.rs:197:37
[INFO] [stdout]      |
[INFO] [stdout]  135 |             let mut update_interval = interval(Duration::from_secs(subscription.interval_seconds));
[INFO] [stdout]      |                 -------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `update_interval` calls a custom destructor
[INFO] [stdout]      |                 `update_interval` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  144 | /               tokio::select! {
[INFO] [stdout]  145 | |                   // Handle incoming messages from client
[INFO] [stdout]  146 | |                   Some(msg) = msg_stream.recv() => {
[INFO] [stdout]      | |                        ---
[INFO] [stdout]      | |                        |
[INFO] [stdout]      | |                        `msg` calls a custom destructor
[INFO] [stdout]      | |                        `msg` will be dropped later as of Edition 2024
[INFO] [stdout]  147 | |                       match msg {
[INFO] [stdout]  148 | |                           Ok(Message::Text(text)) => {
[INFO] [stdout]      | |                                            ----
[INFO] [stdout]      | |                                            |
[INFO] [stdout]      | |                                            `text` calls a custom destructor
[INFO] [stdout]      | |                                            `text` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  161 | |                                           if let Err(e) = send_historical_metrics(
[INFO] [stdout]      | |  ____________________________________________________-____-
[INFO] [stdout]      | | |                                                    |
[INFO] [stdout]      | | |                                                    `e` calls a custom destructor
[INFO] [stdout]      | | |                                                    `e` will be dropped later as of Edition 2024
[INFO] [stdout]  162 | | |                                             &mut session,
[INFO] [stdout]  163 | | |                                             &metrics_store,
[INFO] [stdout]  164 | | |                                             &subscription.metrics
[INFO] [stdout]  165 | | |                                         ).await {
[INFO] [stdout]      | | |                                           -----
[INFO] [stdout]      | | |                                           |   |
[INFO] [stdout]      | | |___________________________________________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      | |                                             |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  172 | |                                       let _ = send_error(&mut session, &format!("Invalid subscription: {}", e)).await;
[INFO] [stdout]      | |                                               -----------------------------------------------------------------------
[INFO] [stdout]      | |                                               |                                                                 |
[INFO] [stdout]      | |                                               |                                                                 this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                                               |                                                                 `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |                                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  176 | |                           Ok(Message::Ping(bytes)) => {
[INFO] [stdout]      | |                                            -----
[INFO] [stdout]      | |                                            |
[INFO] [stdout]      | |                                            `bytes` calls a custom destructor
[INFO] [stdout]      | |                                            `bytes` will be dropped later as of Edition 2024
[INFO] [stdout]  177 | |                               debug!("Received ping, sending pong");
[INFO] [stdout]  178 | |                               if session.pong(&bytes).await.is_err() {
[INFO] [stdout]      | |                                  --------------------------
[INFO] [stdout]      | |                                  |
[INFO] [stdout]      | |                                  this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                                  `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  197 | |                       if let Err(e) = send_metrics_snapshot(&mut session, &metrics).await {
[INFO] [stdout]      | |                                  -    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                                  |    |                                             |
[INFO] [stdout]      | |                                  |    |                                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      | |                                  |    |                                             up until Edition 2021 `#11` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                  |    |                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      | |                                  |    |                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                  |    this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      | |                                  |    up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                                  |    this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |                                  |    `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                  this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      | |                                  `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  202 | |               }
[INFO] [stdout]      | |               -
[INFO] [stdout]      | |               |
[INFO] [stdout]      | |               `output` calls a custom destructor
[INFO] [stdout]      | |               `output` will be dropped later as of Edition 2024
[INFO] [stdout]      | |               `futures_init` calls a custom destructor
[INFO] [stdout]      | |               `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]      | |               `futures` calls a custom destructor
[INFO] [stdout]      | |               `futures` will be dropped later as of Edition 2024
[INFO] [stdout]      | |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |_______________`#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `update_interval` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs:1313:9
[INFO] [stdout]      |
[INFO] [stdout] 1313 | /         impl $(<
[INFO] [stdout] 1314 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1315 | |             $( $generics
[INFO] [stdout] 1316 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1319 | |             ),*
[INFO] [stdout] 1320 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `output` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `text` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  105 |                 "xai" => delegate_prompt!(xai::Client<HttpClient>, "XAI_API_KEY", "xAI"),
[INFO] [stdout]      |                          ---------------------------------------------------------------
[INFO] [stdout]      |                          |                                                             |
[INFO] [stdout]      |                          |                                                             now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                          in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  104 |                 "groq" => delegate_prompt!(groq::Client<HttpClient>, "GROQ_API_KEY", "Groq"),
[INFO] [stdout]      |                           ------------------------------------------------------------------
[INFO] [stdout]      |                           |                                                                |
[INFO] [stdout]      |                           |                                                                now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                           in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  102 |                     delegate_prompt!(mistral::Client<HttpClient>, "MISTRAL_API_KEY", "Mistral")
[INFO] [stdout]      |                     --------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]  103 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                       let client = <$client>::new(&key)
[INFO] [stdout]      |                           ------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `client` calls a custom destructor
[INFO] [stdout]      |                           `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                           .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                       let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                           -----
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `agent` calls a custom destructor
[INFO] [stdout]      |                           `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                           .await
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   95 | /                     delegate_prompt!(
[INFO] [stdout]   96 | |                         perplexity::Client<HttpClient>,
[INFO] [stdout]   97 | |                         "PERPLEXITY_API_KEY",
[INFO] [stdout]   98 | |                         "Perplexity"
[INFO] [stdout]   99 | |                     )
[INFO] [stdout]      | |_____________________- in this macro invocation
[INFO] [stdout]  100 |                   }
[INFO] [stdout]      |                   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   92 |                     delegate_prompt!(cohere::Client<HttpClient>, "COHERE_API_KEY", "Cohere")
[INFO] [stdout]      |                     ------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]   93 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                       let client = <$client>::new(&key)
[INFO] [stdout]      |                           ------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `client` calls a custom destructor
[INFO] [stdout]      |                           `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                           .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                       let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                           -----
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `agent` calls a custom destructor
[INFO] [stdout]      |                           `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                           .await
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   85 | /                     delegate_prompt!(
[INFO] [stdout]   86 | |                         anthropic::Client<HttpClient>,
[INFO] [stdout]   87 | |                         "ANTHROPIC_API_KEY",
[INFO] [stdout]   88 | |                         "Anthropic"
[INFO] [stdout]   89 | |                     )
[INFO] [stdout]      | |_____________________- in this macro invocation
[INFO] [stdout]   90 |                   }
[INFO] [stdout]      |                   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:75:26
[INFO] [stdout]      |
[INFO] [stdout]   69 |                     let client = <$client>::new(&key)
[INFO] [stdout]      |                         ------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `client` calls a custom destructor
[INFO] [stdout]      |                         `client` will be dropped later as of Edition 2024
[INFO] [stdout]   70 |                         .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]   71 |                     let agent = client.agent(model).preamble(preamble).build();
[INFO] [stdout]      |                         -----
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `agent` calls a custom destructor
[INFO] [stdout]      |                         `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   75 |                         .await
[INFO] [stdout]      |                          ^^^^^
[INFO] [stdout]      |                          |
[INFO] [stdout]      |                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   82 |                     delegate_prompt!(openai::Client<HttpClient>, "OPENAI_API_KEY", "OpenAI")
[INFO] [stdout]      |                     ------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]   83 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                 let client = <$client>::new(&key)
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `client` calls a custom destructor
[INFO] [stdout]      |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                     .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                 let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `agent` calls a custom destructor
[INFO] [stdout]      |                     `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                     .await
[INFO] [stdout]      |                      ^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  195 |             "xai" => delegate_prompt!(xai::Client<HttpClient>, "XAI_API_KEY", "xAI", preamble),
[INFO] [stdout]      |                      -------------------------------------------------------------------------
[INFO] [stdout]      |                      |                                                                       |
[INFO] [stdout]      |                      |                                                                       now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                      in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                 let client = <$client>::new(&key)
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `client` calls a custom destructor
[INFO] [stdout]      |                     `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                     .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                 let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                     -----
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `agent` calls a custom destructor
[INFO] [stdout]      |                     `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                     .await
[INFO] [stdout]      |                      ^^^^^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  194 |             "groq" => delegate_prompt!(groq::Client<HttpClient>, "GROQ_API_KEY", "Groq", preamble),
[INFO] [stdout]      |                       ----------------------------------------------------------------------------
[INFO] [stdout]      |                       |                                                                          |
[INFO] [stdout]      |                       |                                                                          now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |                       in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  187 | /                 delegate_prompt!(
[INFO] [stdout]  188 | |                     mistral::Client<HttpClient>,
[INFO] [stdout]  189 | |                     "MISTRAL_API_KEY",
[INFO] [stdout]  190 | |                     "Mistral",
[INFO] [stdout]  191 | |                     preamble
[INFO] [stdout]  192 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  193 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  179 | /                 delegate_prompt!(
[INFO] [stdout]  180 | |                     perplexity::Client<HttpClient>,
[INFO] [stdout]  181 | |                     "PERPLEXITY_API_KEY",
[INFO] [stdout]  182 | |                     "Perplexity",
[INFO] [stdout]  183 | |                     preamble
[INFO] [stdout]  184 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  185 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  171 | /                 delegate_prompt!(
[INFO] [stdout]  172 | |                     cohere::Client<HttpClient>,
[INFO] [stdout]  173 | |                     "COHERE_API_KEY",
[INFO] [stdout]  174 | |                     "Cohere",
[INFO] [stdout]  175 | |                     preamble
[INFO] [stdout]  176 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  177 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  163 | /                 delegate_prompt!(
[INFO] [stdout]  164 | |                     anthropic::Client<HttpClient>,
[INFO] [stdout]  165 | |                     "ANTHROPIC_API_KEY",
[INFO] [stdout]  166 | |                     "Anthropic",
[INFO] [stdout]  167 | |                     preamble
[INFO] [stdout]  168 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  169 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/services/ai.rs:148:22
[INFO] [stdout]      |
[INFO] [stdout]  142 |                   let client = <$client>::new(&key)
[INFO] [stdout]      |                       ------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `client` calls a custom destructor
[INFO] [stdout]      |                       `client` will be dropped later as of Edition 2024
[INFO] [stdout]  143 |                       .map_err(|e| AiServiceError::ProviderError(e.to_string()))?;
[INFO] [stdout]  144 |                   let agent = client.agent(model).preamble($preamble).build();
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `agent` calls a custom destructor
[INFO] [stdout]      |                       `agent` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  148 |                       .await
[INFO] [stdout]      |                        ^^^^^
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  155 | /                 delegate_prompt!(
[INFO] [stdout]  156 | |                     openai::Client<HttpClient>,
[INFO] [stdout]  157 | |                     "OPENAI_API_KEY",
[INFO] [stdout]  158 | |                     "OpenAI",
[INFO] [stdout]  159 | |                     preamble
[INFO] [stdout]  160 | |                 )
[INFO] [stdout]      | |_________________- in this macro invocation
[INFO] [stdout]  161 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `agent` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `agent` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.73/src/ssl/mod.rs:1790:1
[INFO] [stdout]      |
[INFO] [stdout] 1790 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1791 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1792 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1803 | |     pub struct SslContextRef;
[INFO] [stdout] 1804 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `delegate_prompt` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/http.rs:667:27
[INFO] [stdout]     |
[INFO] [stdout] 652 |                     let mut builder =
[INFO] [stdout]     |                         -----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `builder` calls a custom destructor
[INFO] [stdout]     |                         `builder` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 667 |                     match response.bytes().await {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                           |                |
[INFO] [stdout]     |                           |                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                           |                up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 678 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `builder` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `builder` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `builder` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.11.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/http.rs:667:44
[INFO] [stdout]     |
[INFO] [stdout] 652 |                     let mut builder =
[INFO] [stdout]     |                         -----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `builder` calls a custom destructor
[INFO] [stdout]     |                         `builder` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 667 |                     match response.bytes().await {
[INFO] [stdout]     |                                            ^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 678 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `builder` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `builder` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `builder` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.11.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:104:39
[INFO] [stdout]     |
[INFO] [stdout] 104 |             while let Some(Ok(msg)) = client_msg_stream.next().await {
[INFO] [stdout]     |                               ---     ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                               |       |                        |
[INFO] [stdout]     |                               |       |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               |       |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                               |       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                               |       up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               `msg` calls a custom destructor
[INFO] [stdout]     |                               `msg` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 130 |                         let _ = backend_write.close().await;
[INFO] [stdout]     |                                 ---------------------------
[INFO] [stdout]     |                                 |                     |
[INFO] [stdout]     |                                 |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                 |                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 136 |                 if let Err(e) = backend_write.send(backend_msg).await {
[INFO] [stdout]     |                            -                                    -----
[INFO] [stdout]     |                            |                                    |
[INFO] [stdout]     |                            |                                    this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                            |                                    `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `e` calls a custom destructor
[INFO] [stdout]     |                            `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 140 |                     let _ = client_session_clone.close(None).await;
[INFO] [stdout]     |                             --------------------------------------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `__awaitee` calls a custom destructor
[INFO] [stdout]     |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 143 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:156:75
[INFO] [stdout]     |
[INFO] [stdout] 149 |             while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                            ----------                        -----
[INFO] [stdout]     |                            |                                 |
[INFO] [stdout]     |                            |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `msg_result` calls a custom destructor
[INFO] [stdout]     |                            `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                 if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                 --------------------------^^^^^
[INFO] [stdout]     |                                                 |                         |
[INFO] [stdout]     |                                                 |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                                 |                         up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 162 |                             }
[INFO] [stdout]     |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                 if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                 --------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                 if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                 if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:166:76
[INFO] [stdout]     |
[INFO] [stdout] 149 |             while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                            ----------                        -----
[INFO] [stdout]     |                            |                                 |
[INFO] [stdout]     |                            |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `msg_result` calls a custom destructor
[INFO] [stdout]     |                            `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                 if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                 -------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                 if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                 ---------------------------^^^^^
[INFO] [stdout]     |                                                 |                          |
[INFO] [stdout]     |                                                 |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                                 |                          up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 172 |                             }
[INFO] [stdout]     |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                 if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                 if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:176:77
[INFO] [stdout]     |
[INFO] [stdout] 149 |             while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                            ----------                        -----
[INFO] [stdout]     |                            |                                 |
[INFO] [stdout]     |                            |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `msg_result` calls a custom destructor
[INFO] [stdout]     |                            `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                 if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                 -------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                 if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                 --------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                 if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                 ----------------------------^^^^^
[INFO] [stdout]     |                                                 |                           |
[INFO] [stdout]     |                                                 |                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                                 |                           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 182 |                             }
[INFO] [stdout]     |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                 if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:186:77
[INFO] [stdout]     |
[INFO] [stdout] 149 |             while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                            ----------                        -----
[INFO] [stdout]     |                            |                                 |
[INFO] [stdout]     |                            |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                            `msg_result` calls a custom destructor
[INFO] [stdout]     |                            `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                 if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                 -------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                 if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                 --------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                 if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                 ---------------------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                 if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                 ----------------------------^^^^^
[INFO] [stdout]     |                                                 |                           |
[INFO] [stdout]     |                                                 |                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                                 |                           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 192 |                             }
[INFO] [stdout]     |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/kairos-rs/src/services/websocket.rs:149:42
[INFO] [stdout]     |
[INFO] [stdout] 149 |               while let Some(msg_result) = backend_read.next().await {
[INFO] [stdout]     |                              ----------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                              |             |                   |
[INFO] [stdout]     |                              |             |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              |             |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                              |             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                              |             up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                              `msg_result` calls a custom destructor
[INFO] [stdout]     |                              `msg_result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 156 |                                   if let Err(e) = client_session.text(text).await {
[INFO] [stdout]     |                                                   -------------------------------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 166 |                                   if let Err(e) = client_session.binary(bin).await {
[INFO] [stdout]     |                                                   --------------------------------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |                                   if let Err(e) = client_session.ping(&bytes).await {
[INFO] [stdout]     |                                                   ---------------------------------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                   `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 186 |                                   if let Err(e) = client_session.pong(&bytes).await {
[INFO] [stdout]     |                                                   ---------------------------------
[INFO] [stdout]     |                                                   |
[INFO] [stdout]     |                                                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 220 |                                   let _ = client_session.close(close_reason).await;
[INFO] [stdout]     |                                           ----------------------------------------
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                           `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 226 |                       Err(e) => {
[INFO] [stdout]     |                           -
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           `e` calls a custom destructor
[INFO] [stdout]     |                           `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 230 |                           let _ = client_session.close(Some(actix_ws::CloseReason {
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 231 | |                             code: actix_ws::CloseCode::Error,
[INFO] [stdout] 232 | |                             description: Some(format!("Backend error: {}", e)),
[INFO] [stdout] 233 | |                         })).await;
[INFO] [stdout]     | |                                 -
[INFO] [stdout]     | |                                 |
[INFO] [stdout]     | |_________________________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 237 |               }
[INFO] [stdout]     |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `msg_result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg_result` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:352:54
[INFO] [stdout]      |
[INFO] [stdout]  352 |                           if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |  ____________________________________----______---_____^
[INFO] [stdout]      | |                                    |         |
[INFO] [stdout]      | |                                    |         `val` calls a custom destructor
[INFO] [stdout]      | |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    `name` calls a custom destructor
[INFO] [stdout]      | |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout]  353 | |                             HeaderName::from_str(&transform.name),
[INFO] [stdout]  354 | |                             HeaderValue::from_str(value),
[INFO] [stdout]  355 | |                         ) {
[INFO] [stdout]      | |                         ^
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |_________________________this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                           up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  358 |                                       headers.insert(name, val);
[INFO] [stdout]      |                                       -------------------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  361 |                                   headers.insert(name, val);
[INFO] [stdout]      |                                   -------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  364 |                       }
[INFO] [stdout]      |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  367 |                       if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                 ----
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                           headers.remove(&name);
[INFO] [stdout]      |                           ---------------------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  375 |                           if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                     -----
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `regex` calls a custom destructor
[INFO] [stdout]      |                                     `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  376 |                               if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                         ----
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  381 |                                               headers.insert(name, new_val);
[INFO] [stdout]      |                                               -----------------------------
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                               `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:367:39
[INFO] [stdout]      |
[INFO] [stdout]  352 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  358 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  361 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  367 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |       |
[INFO] [stdout]      |                               |       this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                               |       up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  369 |                     }
[INFO] [stdout]  370 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  375 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  376 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  381 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:376:47
[INFO] [stdout]      |
[INFO] [stdout]  352 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  358 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  361 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  367 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  375 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  376 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |       |
[INFO] [stdout]      |                                       |       this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                       |       up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  381 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  386 |                         }
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:375:44
[INFO] [stdout]      |
[INFO] [stdout]  352 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  358 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  361 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  367 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  375 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |        |
[INFO] [stdout]      |                                   |        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |        up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  376 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  381 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  387 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:475:54
[INFO] [stdout]      |
[INFO] [stdout]  475 |                           if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |  ____________________________________----______---_____^
[INFO] [stdout]      | |                                    |         |
[INFO] [stdout]      | |                                    |         `val` calls a custom destructor
[INFO] [stdout]      | |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                                    `name` calls a custom destructor
[INFO] [stdout]      | |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout]  476 | |                             HeaderName::from_str(&transform.name),
[INFO] [stdout]  477 | |                             HeaderValue::from_str(value),
[INFO] [stdout]  478 | |                         ) {
[INFO] [stdout]      | |                         ^
[INFO] [stdout]      | |                         |
[INFO] [stdout]      | |_________________________this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                           up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                                       headers.insert(name, val);
[INFO] [stdout]      |                                       -------------------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  484 |                                   headers.insert(name, val);
[INFO] [stdout]      |                                   -------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  487 |                       }
[INFO] [stdout]      |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  490 |                       if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                 ----
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  491 |                           headers.remove(&name);
[INFO] [stdout]      |                           ---------------------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  498 |                           if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                     -----
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `regex` calls a custom destructor
[INFO] [stdout]      |                                     `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  499 |                               if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                         ----
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  504 |                                               headers.insert(name, new_val);
[INFO] [stdout]      |                                               -----------------------------
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                               `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:490:39
[INFO] [stdout]      |
[INFO] [stdout]  475 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  484 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  490 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |       |
[INFO] [stdout]      |                               |       this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                               |       up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  491 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  492 |                     }
[INFO] [stdout]  493 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  498 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  499 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  504 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking kairos-client v0.3.0 (/opt/rustwide/workdir/crates/kairos-client)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:499:47
[INFO] [stdout]      |
[INFO] [stdout]  475 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  484 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  490 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  491 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  498 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  499 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |       |
[INFO] [stdout]      |                                       |       this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                       |       up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  504 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  509 |                         }
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking kairos-gateway v0.3.0 (/opt/rustwide/workdir/crates/kairos-gateway)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/kairos-rs/src/middleware/transform.rs:498:44
[INFO] [stdout]      |
[INFO] [stdout]  475 |                         if let (Ok(name), Ok(val)) = (
[INFO] [stdout]      |                                    ----      ---
[INFO] [stdout]      |                                    |         |
[INFO] [stdout]      |                                    |         `val` calls a custom destructor
[INFO] [stdout]      |                                    |         `val` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    `name` calls a custom destructor
[INFO] [stdout]      |                                    `name` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  481 |                                     headers.insert(name, val);
[INFO] [stdout]      |                                     -------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  484 |                                 headers.insert(name, val);
[INFO] [stdout]      |                                 -------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  490 |                     if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                               ----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  491 |                         headers.remove(&name);
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                         `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  498 |                         if let Ok(regex) = Regex::new(pattern) {
[INFO] [stdout]      |                                   -----    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |        |
[INFO] [stdout]      |                                   |        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                   |        up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   `regex` calls a custom destructor
[INFO] [stdout]      |                                   `regex` will be dropped later as of Edition 2024
[INFO] [stdout]  499 |                             if let Ok(name) = HeaderName::from_str(&transform.name) {
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                       `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  504 |                                             headers.insert(name, new_val);
[INFO] [stdout]      |                                             -----------------------------
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                             `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  510 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `name` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `regex` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs:2257:1
[INFO] [stdout]      |
[INFO] [stdout] 2257 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/kairos-client/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking kairos-ui v0.2.11 (/opt/rustwide/workdir/crates/kairos-ui)
[INFO] [stderr]        Fixed crates/kairos-client/src/lib.rs (4 fixes)
[INFO] [stderr]    Migrating crates/kairos-rs/tests/circuit_breaker_tests.rs from 2021 edition to 2024
[INFO] [stderr]     Checking kairos-cli v0.2.11 (/opt/rustwide/workdir/crates/kairos-cli)
[INFO] [stderr]    Migrating crates/kairos-rs/tests/integration_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/config_settings_tests.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed crates/kairos-rs/tests/config_settings_tests.rs (23 fixes)
[INFO] [stderr]    Migrating crates/kairos-rs/tests/transformation_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/route_matcher_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/ai_service_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/load_balancer_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/dns_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-gateway/src/main.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/simple_metrics_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/config_validation_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/metrics_store_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/circuit_breaker_integration_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/jwt_integration_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-ui/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-cli/src/main.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/websocket_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/config_hot_reload_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/ftp_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/websocket_metrics_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/simple_circuit_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-rs/tests/real_metrics_test.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/kairos-ui/src/main.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 43s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr] crater-edition-check: kairos-rs v0.3.2 (/opt/rustwide/workdir/crates/kairos-rs) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: kairos-gateway v0.3.0 (/opt/rustwide/workdir/crates/kairos-gateway) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: kairos-cli v0.2.11 (/opt/rustwide/workdir/crates/kairos-cli) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: kairos-client v0.3.0 (/opt/rustwide/workdir/crates/kairos-client) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: kairos-ui v0.2.11 (/opt/rustwide/workdir/crates/kairos-ui) updating edition from 2021 to 2024
[INFO] [stderr]     Checking kairos-rs v0.3.2 (/opt/rustwide/workdir/crates/kairos-rs)
[INFO] [stderr]     Checking kairos-ui v0.2.11 (/opt/rustwide/workdir/crates/kairos-ui)
[INFO] [stdout] warning: unused import: `super::GATEWAY_BASE_URL`
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/config.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use super::GATEWAY_BASE_URL;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::GATEWAY_BASE_URL`
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/health.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::GATEWAY_BASE_URL;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::GATEWAY_BASE_URL`
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/metrics.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::GATEWAY_BASE_URL;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::GATEWAY_BASE_URL`
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/routes.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::GATEWAY_BASE_URL;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::GATEWAY_BASE_URL`
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/config.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use super::GATEWAY_BASE_URL;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::GATEWAY_BASE_URL`
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/health.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::GATEWAY_BASE_URL;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::GATEWAY_BASE_URL`
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/metrics.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::GATEWAY_BASE_URL;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::GATEWAY_BASE_URL`
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/routes.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::GATEWAY_BASE_URL;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> crates/kairos-rs/src/routes/management.rs:868:16
[INFO] [stdout]     |
[INFO] [stdout] 868 |     if let Err(e) = manager.save_to_disk().await {
[INFO] [stdout]     |                ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> crates/kairos-rs/src/routes/management.rs:868:16
[INFO] [stdout]     |
[INFO] [stdout] 868 |     if let Err(e) = manager.save_to_disk().await {
[INFO] [stdout]     |                ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking kairos-client v0.3.0 (/opt/rustwide/workdir/crates/kairos-client)
[INFO] [stderr]     Checking kairos-gateway v0.3.0 (/opt/rustwide/workdir/crates/kairos-gateway)
[INFO] [stderr]     Checking kairos-cli v0.2.11 (/opt/rustwide/workdir/crates/kairos-cli)
[INFO] [stdout] warning: unused import: `kairos_client::GatewayClient`
[INFO] [stdout]  --> crates/kairos-cli/src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use kairos_client::GatewayClient;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process`
[INFO] [stdout]  --> crates/kairos-cli/src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::process;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `kairos_client::GatewayClient`
[INFO] [stdout]  --> crates/kairos-cli/src/main.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use kairos_client::GatewayClient;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process`
[INFO] [stdout]  --> crates/kairos-cli/src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::process;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_val`
[INFO] [stdout]   --> crates/kairos-ui/src/components/chart.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let data_val = data.get();
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_val`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options_val`
[INFO] [stdout]   --> crates/kairos-ui/src/components/chart.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let options_val = options.map(|o| o.get());
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kind_val`
[INFO] [stdout]   --> crates/kairos-ui/src/components/chart.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let kind_val = kind.get();
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kind_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_metrics`
[INFO] [stdout]  --> crates/kairos-ui/src/components/real_time_metrics.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let (metrics, set_metrics) = signal(SystemMetrics::default());
[INFO] [stdout]   |                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_metrics`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status`
[INFO] [stdout]  --> crates/kairos-ui/src/components/real_time_metrics.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let (status, set_status) = signal("Disconnected");
[INFO] [stdout]   |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chart_data_signal`
[INFO] [stdout]    --> crates/kairos-ui/src/pages/metrics_page.rs:779:9
[INFO] [stdout]     |
[INFO] [stdout] 779 |     let chart_data_signal = Signal::derive(move || {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chart_data_signal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats_signal`
[INFO] [stdout]    --> crates/kairos-ui/src/pages/metrics_page.rs:821:9
[INFO] [stdout]     |
[INFO] [stdout] 821 |     let stats_signal = Signal::derive(move || {
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stats_signal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chart_options`
[INFO] [stdout]    --> crates/kairos-ui/src/pages/metrics_page.rs:849:9
[INFO] [stdout]     |
[INFO] [stdout] 849 |     let chart_options = Signal::derive(move || {
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chart_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data_val`
[INFO] [stdout]   --> crates/kairos-ui/src/components/chart.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let data_val = data.get();
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data_val`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `options_val`
[INFO] [stdout]   --> crates/kairos-ui/src/components/chart.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let options_val = options.map(|o| o.get());
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kind_val`
[INFO] [stdout]   --> crates/kairos-ui/src/components/chart.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let kind_val = kind.get();
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kind_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_metrics`
[INFO] [stdout]  --> crates/kairos-ui/src/components/real_time_metrics.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let (metrics, set_metrics) = signal(SystemMetrics::default());
[INFO] [stdout]   |                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_metrics`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_status`
[INFO] [stdout]  --> crates/kairos-ui/src/components/real_time_metrics.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let (status, set_status) = signal("Disconnected");
[INFO] [stdout]   |                  ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_status`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GATEWAY_BASE_URL` is never used
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/mod.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub(crate) const GATEWAY_BASE_URL: &str = "http://localhost:5900";
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chart_data_signal`
[INFO] [stdout]    --> crates/kairos-ui/src/pages/metrics_page.rs:779:9
[INFO] [stdout]     |
[INFO] [stdout] 779 |     let chart_data_signal = Signal::derive(move || {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chart_data_signal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stats_signal`
[INFO] [stdout]    --> crates/kairos-ui/src/pages/metrics_page.rs:821:9
[INFO] [stdout]     |
[INFO] [stdout] 821 |     let stats_signal = Signal::derive(move || {
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_stats_signal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chart_options`
[INFO] [stdout]    --> crates/kairos-ui/src/pages/metrics_page.rs:849:9
[INFO] [stdout]     |
[INFO] [stdout] 849 |     let chart_options = Signal::derive(move || {
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chart_options`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GATEWAY_BASE_URL` is never used
[INFO] [stdout]  --> crates/kairos-ui/src/server_functions/mod.rs:7:18
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub(crate) const GATEWAY_BASE_URL: &str = "http://localhost:5900";
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 02s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr] crater-edition-check all packages now at latest edition
[INFO] [stderr] crater-edition-check: all finished
[INFO] running `Command { std: "docker" "inspect" "28ab536d8a3fd5eddaae5d1ec16c1ebe0dd5c9fd8abc4e50c6a02a8df8d9b721", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "28ab536d8a3fd5eddaae5d1ec16c1ebe0dd5c9fd8abc4e50c6a02a8df8d9b721", kill_on_drop: false }`
[INFO] [stdout] 28ab536d8a3fd5eddaae5d1ec16c1ebe0dd5c9fd8abc4e50c6a02a8df8d9b721
